\hypertarget{classShipCAD_1_1Viewport}{}\section{Ship\+C\+AD\+:\+:Viewport Class Reference}
\label{classShipCAD_1_1Viewport}\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}


{\ttfamily \#include $<$viewport.\+h$>$}

Inheritance diagram for Ship\+C\+AD\+:\+:Viewport\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.000000cm]{classShipCAD_1_1Viewport}
\end{center}
\end{figure}
\subsection*{Public Slots}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{classShipCAD_1_1Viewport_a578ac5ee96e36638739517fa21bf70c0}{set\+Viewport\+Mode} (\hyperlink{namespaceShipCAD_a67437198ee14f74e6c5277d761894863}{viewport\+\_\+mode\+\_\+t} mode)
\item 
void \hyperlink{classShipCAD_1_1Viewport_a554a3455c39ee5652b13c9b24c3c962e}{set\+Viewport\+Type} (\hyperlink{namespaceShipCAD_aeeeb05810f2e31ef89fd4ac6b6ba9c0a}{viewport\+\_\+type\+\_\+t} ty)
\item 
void \hyperlink{classShipCAD_1_1Viewport_a5f90a885e0204b32ff9795c4b79f824b}{set\+Camera\+Type} (\hyperlink{namespaceShipCAD_a58f51ebd2e66de5e41c2ffd6f434241e}{camera\+\_\+type\+\_\+t} val)
\item 
void \hyperlink{classShipCAD_1_1Viewport_a00ba2139fa06701b65de70d5c657f5d6}{set\+Angle} (float val)
\item 
void \hyperlink{classShipCAD_1_1Viewport_a4bda4b742dc477ed5dc2ab6ac7fe92bc}{set\+Elevation} (float val)
\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_a4eeeb100fd88487215bb7794bdf5e0cb}{resize\+Event} (Q\+Resize\+Event $\ast$\hyperlink{classOpenGLWindow_a1e3045cffb900de55b7384f5091c9d94}{event})
\item 
bool \hyperlink{classShipCAD_1_1Viewport_ab247f28eb569e160142901b6eef265a3}{context\+Menu} (Q\+Mouse\+Event $\ast$\hyperlink{classOpenGLWindow_a1e3045cffb900de55b7384f5091c9d94}{event})
\end{DoxyCompactItemize}
\subsection*{Signals}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{classShipCAD_1_1Viewport_a910ae7ca3acc3a55ae4920ed57305a01}{context\+Menu\+Event} (\hyperlink{classShipCAD_1_1ViewportContextEvent}{Ship\+C\+A\+D\+::\+Viewport\+Context\+Event} $\ast$\hyperlink{classOpenGLWindow_a1e3045cffb900de55b7384f5091c9d94}{event})
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classShipCAD_1_1Viewport_af6af98eae1040b82b047df5a679e891b}{Viewport} (\hyperlink{classShipCAD_1_1Controller}{Ship\+C\+A\+D\+::\+Controller} $\ast$ctl, \hyperlink{namespaceShipCAD_aeeeb05810f2e31ef89fd4ac6b6ba9c0a}{viewport\+\_\+type\+\_\+t} vtype)
\item 
virtual \hyperlink{classShipCAD_1_1Viewport_a1e18a1ff4a52be33ef63d25034561850}{$\sim$\+Viewport} ()
\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_a9c35de3f7c9d7c860c494081b48309b3}{initialize} ()
\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_ac0c02d6e3a0933669de2292f041c69e6}{clear\+Background} ()
\begin{DoxyCompactList}\small\item\em clear background \end{DoxyCompactList}\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_ae1a93920fcaf1b6eaa46d390bbd15ce4}{render\+Open\+GL} ()
\begin{DoxyCompactList}\small\item\em render Open\+GL \end{DoxyCompactList}\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_ad48bfa81c7034792f290ed47bac203c5}{render\+With\+Painter} (Q\+Painter $\ast$painter)
\begin{DoxyCompactList}\small\item\em render qpainter \end{DoxyCompactList}\item 
\hyperlink{classShipCAD_1_1Controller}{Ship\+C\+A\+D\+::\+Controller} $\ast$ \hyperlink{classShipCAD_1_1Viewport_ae8cc8dfbda37517c2af3821cd87deb74}{get\+Controller} ()
\item 
const \hyperlink{classShipCAD_1_1Controller}{Ship\+C\+A\+D\+::\+Controller} $\ast$ \hyperlink{classShipCAD_1_1Viewport_abb20c88690f8513f48f3faa010998a5f}{get\+Controller} () const 
\item 
\hyperlink{namespaceShipCAD_a67437198ee14f74e6c5277d761894863}{viewport\+\_\+mode\+\_\+t} \hyperlink{classShipCAD_1_1Viewport_a205e5082395c6d01660ffc179c57b83e}{get\+Viewport\+Mode} () const 
\item 
\hyperlink{namespaceShipCAD_aeeeb05810f2e31ef89fd4ac6b6ba9c0a}{viewport\+\_\+type\+\_\+t} \hyperlink{classShipCAD_1_1Viewport_a5f261a1925f09917013e8e532688326a}{get\+Viewport\+Type} () const 
\item 
\hyperlink{namespaceShipCAD_a58f51ebd2e66de5e41c2ffd6f434241e}{camera\+\_\+type\+\_\+t} \hyperlink{classShipCAD_1_1Viewport_a017abe5691674d1d232ad8c012b30339}{get\+Camera\+Type} () const 
\item 
const Q\+Vector3D \& \hyperlink{classShipCAD_1_1Viewport_acce571248835d8a66fcb4787c2384824}{get\+Camera} () const 
\item 
Q\+Point \hyperlink{classShipCAD_1_1Viewport_aab16013a5098f23f3f1bb9d4318c3d3b}{convert3D} (const Q\+Vector3D \&pt) const 
\item 
float \hyperlink{classShipCAD_1_1Viewport_a9f643e335e21dc9b752098e00dc5db48}{get\+Angle} () const 
\item 
float \hyperlink{classShipCAD_1_1Viewport_a719ba3bde9e3b390215c420bd62e6b20}{get\+Elevation} () const 
\item 
void \hyperlink{classShipCAD_1_1Viewport_a886ac5965b63039799827da89bf3de20}{add\+Shader} (const std\+::string \&name, \hyperlink{classShipCAD_1_1Shader}{Shader} $\ast$shader)
\item 
\hyperlink{classShipCAD_1_1LineShader}{Line\+Shader} $\ast$ \hyperlink{classShipCAD_1_1Viewport_a0720a01f8650dc4acf89aad0649d9196}{set\+Line\+Shader} ()
\item 
\hyperlink{classShipCAD_1_1FaceShader}{Face\+Shader} $\ast$ \hyperlink{classShipCAD_1_1Viewport_ad6be617bdcab76cd2f44b0528371cd5d}{set\+Mono\+Face\+Shader} ()
\item 
\hyperlink{classShipCAD_1_1FaceShader}{Face\+Shader} $\ast$ \hyperlink{classShipCAD_1_1Viewport_a03cc2ed85178b9735c80b11dceb470b5}{set\+Lighted\+Face\+Shader} ()
\item 
\hyperlink{classShipCAD_1_1CurveFaceShader}{Curve\+Face\+Shader} $\ast$ \hyperlink{classShipCAD_1_1Viewport_af4f3c9649b9d1af1b149048fc99aebe9}{set\+Curve\+Face\+Shader} ()
\item 
bool \hyperlink{classShipCAD_1_1Viewport_aa9af80400534f46e5420916a2895ead5}{shoot\+Pick\+Ray} (\hyperlink{structShipCAD_1_1PickRay}{Pick\+Ray} \&ray)
\item 
bool \hyperlink{classShipCAD_1_1Viewport_af9b33616bfc97332f37acafe48ed4c9f}{can\+Pick} () const 
\item 
bool \hyperlink{classShipCAD_1_1Viewport_a7a09a47962bcd93cff4e390206ec7560}{can\+Pick\+Face} () const 
\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_a7997e0e684a4f8b5709f4d98be6cebb4}{update} ()
\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_a0dddc5b05c7308f8818a726b16a7d9eb}{mouse\+Press\+Event} (Q\+Mouse\+Event $\ast$)
\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_a7cb6994a92d40990b58be272953b9120}{mouse\+Release\+Event} (Q\+Mouse\+Event $\ast$)
\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_ab98dde7bb1d923b8cfc9a0c3cb249c2c}{mouse\+Move\+Event} (Q\+Mouse\+Event $\ast$)
\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_a9ac4c18fa3454cddc5e73322c3d1afd8}{wheel\+Event} (Q\+Wheel\+Event $\ast$)
\item 
virtual void \hyperlink{classShipCAD_1_1Viewport_acc401d8a0d84810a9d695e3621e29b4e}{key\+Press\+Event} (Q\+Key\+Event $\ast$)
\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 70 of file viewport.\+h.



\subsection{Constructor \& Destructor Documentation}
\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!Viewport@{Viewport}}
\index{Viewport@{Viewport}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{Viewport(\+Ship\+C\+A\+D\+::\+Controller $\ast$ctl, viewport\+\_\+type\+\_\+t vtype)}{Viewport(ShipCAD::Controller *ctl, viewport_type_t vtype)}}]{\setlength{\rightskip}{0pt plus 5cm}Viewport\+::\+Viewport (
\begin{DoxyParamCaption}
\item[{{\bf Ship\+C\+A\+D\+::\+Controller} $\ast$}]{ctl, }
\item[{{\bf viewport\+\_\+type\+\_\+t}}]{vtype}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [explicit]}}\hypertarget{classShipCAD_1_1Viewport_af6af98eae1040b82b047df5a679e891b}{}\label{classShipCAD_1_1Viewport_af6af98eae1040b82b047df5a679e891b}


Definition at line 54 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!````~Viewport@{$\sim$\+Viewport}}
\index{````~Viewport@{$\sim$\+Viewport}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{$\sim$\+Viewport()}{~Viewport()}}]{\setlength{\rightskip}{0pt plus 5cm}Viewport\+::$\sim$\+Viewport (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_a1e18a1ff4a52be33ef63d25034561850}{}\label{classShipCAD_1_1Viewport_a1e18a1ff4a52be33ef63d25034561850}


Definition at line 61 of file viewport.\+cpp.



\subsection{Member Function Documentation}
\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!add\+Shader@{add\+Shader}}
\index{add\+Shader@{add\+Shader}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{add\+Shader(const std\+::string \&name, Shader $\ast$shader)}{addShader(const std::string &name, Shader *shader)}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::add\+Shader (
\begin{DoxyParamCaption}
\item[{const std\+::string \&}]{name, }
\item[{{\bf Shader} $\ast$}]{shader}
\end{DoxyParamCaption}
)}\hypertarget{classShipCAD_1_1Viewport_a886ac5965b63039799827da89bf3de20}{}\label{classShipCAD_1_1Viewport_a886ac5965b63039799827da89bf3de20}


Definition at line 193 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!can\+Pick@{can\+Pick}}
\index{can\+Pick@{can\+Pick}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{can\+Pick() const }{canPick() const }}]{\setlength{\rightskip}{0pt plus 5cm}bool Viewport\+::can\+Pick (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\hypertarget{classShipCAD_1_1Viewport_af9b33616bfc97332f37acafe48ed4c9f}{}\label{classShipCAD_1_1Viewport_af9b33616bfc97332f37acafe48ed4c9f}


Definition at line 291 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!can\+Pick\+Face@{can\+Pick\+Face}}
\index{can\+Pick\+Face@{can\+Pick\+Face}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{can\+Pick\+Face() const }{canPickFace() const }}]{\setlength{\rightskip}{0pt plus 5cm}bool Viewport\+::can\+Pick\+Face (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\hypertarget{classShipCAD_1_1Viewport_a7a09a47962bcd93cff4e390206ec7560}{}\label{classShipCAD_1_1Viewport_a7a09a47962bcd93cff4e390206ec7560}


Definition at line 297 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!clear\+Background@{clear\+Background}}
\index{clear\+Background@{clear\+Background}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{clear\+Background()}{clearBackground()}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::clear\+Background (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_ac0c02d6e3a0933669de2292f041c69e6}{}\label{classShipCAD_1_1Viewport_ac0c02d6e3a0933669de2292f041c69e6}


clear background 



Implements \hyperlink{classOpenGLWindow_add04ac504dabc486b3847b107e8f1384}{Open\+G\+L\+Window}.



Definition at line 198 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!context\+Menu@{context\+Menu}}
\index{context\+Menu@{context\+Menu}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{context\+Menu}{contextMenu}}]{\setlength{\rightskip}{0pt plus 5cm}bool Viewport\+::context\+Menu (
\begin{DoxyParamCaption}
\item[{Q\+Mouse\+Event $\ast$}]{event}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [slot]}}\hypertarget{classShipCAD_1_1Viewport_ab247f28eb569e160142901b6eef265a3}{}\label{classShipCAD_1_1Viewport_ab247f28eb569e160142901b6eef265a3}


Definition at line 284 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!context\+Menu\+Event@{context\+Menu\+Event}}
\index{context\+Menu\+Event@{context\+Menu\+Event}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{context\+Menu\+Event}{contextMenuEvent}}]{\setlength{\rightskip}{0pt plus 5cm}void Ship\+C\+A\+D\+::\+Viewport\+::context\+Menu\+Event (
\begin{DoxyParamCaption}
\item[{{\bf Ship\+C\+A\+D\+::\+Viewport\+Context\+Event} $\ast$}]{event}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [signal]}}\hypertarget{classShipCAD_1_1Viewport_a910ae7ca3acc3a55ae4920ed57305a01}{}\label{classShipCAD_1_1Viewport_a910ae7ca3acc3a55ae4920ed57305a01}
\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!convert3D@{convert3D}}
\index{convert3D@{convert3D}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{convert3\+D(const Q\+Vector3\+D \&pt) const }{convert3D(const QVector3D &pt) const }}]{\setlength{\rightskip}{0pt plus 5cm}Q\+Point Viewport\+::convert3D (
\begin{DoxyParamCaption}
\item[{const Q\+Vector3D \&}]{pt}
\end{DoxyParamCaption}
) const}\hypertarget{classShipCAD_1_1Viewport_aab16013a5098f23f3f1bb9d4318c3d3b}{}\label{classShipCAD_1_1Viewport_aab16013a5098f23f3f1bb9d4318c3d3b}


Definition at line 173 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!get\+Angle@{get\+Angle}}
\index{get\+Angle@{get\+Angle}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{get\+Angle() const }{getAngle() const }}]{\setlength{\rightskip}{0pt plus 5cm}float Viewport\+::get\+Angle (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\hypertarget{classShipCAD_1_1Viewport_a9f643e335e21dc9b752098e00dc5db48}{}\label{classShipCAD_1_1Viewport_a9f643e335e21dc9b752098e00dc5db48}


Definition at line 139 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!get\+Camera@{get\+Camera}}
\index{get\+Camera@{get\+Camera}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{get\+Camera() const }{getCamera() const }}]{\setlength{\rightskip}{0pt plus 5cm}const Q\+Vector3D \& Viewport\+::get\+Camera (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\hypertarget{classShipCAD_1_1Viewport_acce571248835d8a66fcb4787c2384824}{}\label{classShipCAD_1_1Viewport_acce571248835d8a66fcb4787c2384824}


Definition at line 82 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!get\+Camera\+Type@{get\+Camera\+Type}}
\index{get\+Camera\+Type@{get\+Camera\+Type}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{get\+Camera\+Type() const }{getCameraType() const }}]{\setlength{\rightskip}{0pt plus 5cm}{\bf camera\+\_\+type\+\_\+t} Viewport\+::get\+Camera\+Type (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\hypertarget{classShipCAD_1_1Viewport_a017abe5691674d1d232ad8c012b30339}{}\label{classShipCAD_1_1Viewport_a017abe5691674d1d232ad8c012b30339}


Definition at line 112 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!get\+Controller@{get\+Controller}}
\index{get\+Controller@{get\+Controller}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{get\+Controller()}{getController()}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Controller} $\ast$ Viewport\+::get\+Controller (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\hypertarget{classShipCAD_1_1Viewport_ae8cc8dfbda37517c2af3821cd87deb74}{}\label{classShipCAD_1_1Viewport_ae8cc8dfbda37517c2af3821cd87deb74}


Definition at line 72 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!get\+Controller@{get\+Controller}}
\index{get\+Controller@{get\+Controller}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{get\+Controller() const }{getController() const }}]{\setlength{\rightskip}{0pt plus 5cm}const {\bf Controller} $\ast$ Viewport\+::get\+Controller (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\hypertarget{classShipCAD_1_1Viewport_abb20c88690f8513f48f3faa010998a5f}{}\label{classShipCAD_1_1Viewport_abb20c88690f8513f48f3faa010998a5f}


Definition at line 77 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!get\+Elevation@{get\+Elevation}}
\index{get\+Elevation@{get\+Elevation}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{get\+Elevation() const }{getElevation() const }}]{\setlength{\rightskip}{0pt plus 5cm}float Viewport\+::get\+Elevation (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}\hypertarget{classShipCAD_1_1Viewport_a719ba3bde9e3b390215c420bd62e6b20}{}\label{classShipCAD_1_1Viewport_a719ba3bde9e3b390215c420bd62e6b20}


Definition at line 156 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!get\+Viewport\+Mode@{get\+Viewport\+Mode}}
\index{get\+Viewport\+Mode@{get\+Viewport\+Mode}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{get\+Viewport\+Mode() const }{getViewportMode() const }}]{\setlength{\rightskip}{0pt plus 5cm}{\bf viewport\+\_\+mode\+\_\+t} Ship\+C\+A\+D\+::\+Viewport\+::get\+Viewport\+Mode (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}\hypertarget{classShipCAD_1_1Viewport_a205e5082395c6d01660ffc179c57b83e}{}\label{classShipCAD_1_1Viewport_a205e5082395c6d01660ffc179c57b83e}


Definition at line 95 of file viewport.\+h.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!get\+Viewport\+Type@{get\+Viewport\+Type}}
\index{get\+Viewport\+Type@{get\+Viewport\+Type}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{get\+Viewport\+Type() const }{getViewportType() const }}]{\setlength{\rightskip}{0pt plus 5cm}{\bf viewport\+\_\+type\+\_\+t} Ship\+C\+A\+D\+::\+Viewport\+::get\+Viewport\+Type (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}\hypertarget{classShipCAD_1_1Viewport_a5f261a1925f09917013e8e532688326a}{}\label{classShipCAD_1_1Viewport_a5f261a1925f09917013e8e532688326a}


Definition at line 97 of file viewport.\+h.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!initialize@{initialize}}
\index{initialize@{initialize}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{initialize()}{initialize()}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::initialize (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_a9c35de3f7c9d7c860c494081b48309b3}{}\label{classShipCAD_1_1Viewport_a9c35de3f7c9d7c860c494081b48309b3}


Reimplemented from \hyperlink{classOpenGLWindow_aed4e2ee22e113b2f7e7d1eba4ef1b965}{Open\+G\+L\+Window}.



Definition at line 87 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!key\+Press\+Event@{key\+Press\+Event}}
\index{key\+Press\+Event@{key\+Press\+Event}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{key\+Press\+Event(\+Q\+Key\+Event $\ast$)}{keyPressEvent(QKeyEvent *)}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::key\+Press\+Event (
\begin{DoxyParamCaption}
\item[{Q\+Key\+Event $\ast$}]{event}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_acc401d8a0d84810a9d695e3621e29b4e}{}\label{classShipCAD_1_1Viewport_acc401d8a0d84810a9d695e3621e29b4e}


Definition at line 446 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!mouse\+Move\+Event@{mouse\+Move\+Event}}
\index{mouse\+Move\+Event@{mouse\+Move\+Event}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{mouse\+Move\+Event(\+Q\+Mouse\+Event $\ast$)}{mouseMoveEvent(QMouseEvent *)}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::mouse\+Move\+Event (
\begin{DoxyParamCaption}
\item[{Q\+Mouse\+Event $\ast$}]{event}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_ab98dde7bb1d923b8cfc9a0c3cb249c2c}{}\label{classShipCAD_1_1Viewport_ab98dde7bb1d923b8cfc9a0c3cb249c2c}


Definition at line 386 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!mouse\+Press\+Event@{mouse\+Press\+Event}}
\index{mouse\+Press\+Event@{mouse\+Press\+Event}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{mouse\+Press\+Event(\+Q\+Mouse\+Event $\ast$)}{mousePressEvent(QMouseEvent *)}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::mouse\+Press\+Event (
\begin{DoxyParamCaption}
\item[{Q\+Mouse\+Event $\ast$}]{event}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_a0dddc5b05c7308f8818a726b16a7d9eb}{}\label{classShipCAD_1_1Viewport_a0dddc5b05c7308f8818a726b16a7d9eb}


Definition at line 311 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!mouse\+Release\+Event@{mouse\+Release\+Event}}
\index{mouse\+Release\+Event@{mouse\+Release\+Event}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{mouse\+Release\+Event(\+Q\+Mouse\+Event $\ast$)}{mouseReleaseEvent(QMouseEvent *)}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::mouse\+Release\+Event (
\begin{DoxyParamCaption}
\item[{Q\+Mouse\+Event $\ast$}]{event}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_a7cb6994a92d40990b58be272953b9120}{}\label{classShipCAD_1_1Viewport_a7cb6994a92d40990b58be272953b9120}


Definition at line 345 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!render\+Open\+GL@{render\+Open\+GL}}
\index{render\+Open\+GL@{render\+Open\+GL}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{render\+Open\+G\+L()}{renderOpenGL()}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::render\+Open\+GL (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_ae1a93920fcaf1b6eaa46d390bbd15ce4}{}\label{classShipCAD_1_1Viewport_ae1a93920fcaf1b6eaa46d390bbd15ce4}


render Open\+GL 



Implements \hyperlink{classOpenGLWindow_aa0cf1ae550a2827b513bfde10f7e97b6}{Open\+G\+L\+Window}.



Definition at line 216 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!render\+With\+Painter@{render\+With\+Painter}}
\index{render\+With\+Painter@{render\+With\+Painter}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{render\+With\+Painter(\+Q\+Painter $\ast$painter)}{renderWithPainter(QPainter *painter)}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::render\+With\+Painter (
\begin{DoxyParamCaption}
\item[{Q\+Painter $\ast$}]{painter}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_ad48bfa81c7034792f290ed47bac203c5}{}\label{classShipCAD_1_1Viewport_ad48bfa81c7034792f290ed47bac203c5}


render qpainter 



Implements \hyperlink{classOpenGLWindow_a0a15a4a8fc68d4318f3a59e884db1497}{Open\+G\+L\+Window}.



Definition at line 208 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!resize\+Event@{resize\+Event}}
\index{resize\+Event@{resize\+Event}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{resize\+Event}{resizeEvent}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::resize\+Event (
\begin{DoxyParamCaption}
\item[{Q\+Resize\+Event $\ast$}]{event}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [virtual]}, {\ttfamily [slot]}}\hypertarget{classShipCAD_1_1Viewport_a4eeeb100fd88487215bb7794bdf5e0cb}{}\label{classShipCAD_1_1Viewport_a4eeeb100fd88487215bb7794bdf5e0cb}


Definition at line 178 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!set\+Angle@{set\+Angle}}
\index{set\+Angle@{set\+Angle}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{set\+Angle}{setAngle}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::set\+Angle (
\begin{DoxyParamCaption}
\item[{float}]{val}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [slot]}}\hypertarget{classShipCAD_1_1Viewport_a00ba2139fa06701b65de70d5c657f5d6}{}\label{classShipCAD_1_1Viewport_a00ba2139fa06701b65de70d5c657f5d6}


Definition at line 147 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!set\+Camera\+Type@{set\+Camera\+Type}}
\index{set\+Camera\+Type@{set\+Camera\+Type}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{set\+Camera\+Type}{setCameraType}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::set\+Camera\+Type (
\begin{DoxyParamCaption}
\item[{{\bf camera\+\_\+type\+\_\+t}}]{val}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [slot]}}\hypertarget{classShipCAD_1_1Viewport_a5f90a885e0204b32ff9795c4b79f824b}{}\label{classShipCAD_1_1Viewport_a5f90a885e0204b32ff9795c4b79f824b}


Definition at line 120 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!set\+Curve\+Face\+Shader@{set\+Curve\+Face\+Shader}}
\index{set\+Curve\+Face\+Shader@{set\+Curve\+Face\+Shader}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{set\+Curve\+Face\+Shader()}{setCurveFaceShader()}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Curve\+Face\+Shader} $\ast$ Viewport\+::set\+Curve\+Face\+Shader (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\hypertarget{classShipCAD_1_1Viewport_af4f3c9649b9d1af1b149048fc99aebe9}{}\label{classShipCAD_1_1Viewport_af4f3c9649b9d1af1b149048fc99aebe9}


Definition at line 271 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!set\+Elevation@{set\+Elevation}}
\index{set\+Elevation@{set\+Elevation}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{set\+Elevation}{setElevation}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::set\+Elevation (
\begin{DoxyParamCaption}
\item[{float}]{val}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [slot]}}\hypertarget{classShipCAD_1_1Viewport_a4bda4b742dc477ed5dc2ab6ac7fe92bc}{}\label{classShipCAD_1_1Viewport_a4bda4b742dc477ed5dc2ab6ac7fe92bc}


Definition at line 164 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!set\+Lighted\+Face\+Shader@{set\+Lighted\+Face\+Shader}}
\index{set\+Lighted\+Face\+Shader@{set\+Lighted\+Face\+Shader}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{set\+Lighted\+Face\+Shader()}{setLightedFaceShader()}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Face\+Shader} $\ast$ Viewport\+::set\+Lighted\+Face\+Shader (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\hypertarget{classShipCAD_1_1Viewport_a03cc2ed85178b9735c80b11dceb470b5}{}\label{classShipCAD_1_1Viewport_a03cc2ed85178b9735c80b11dceb470b5}


Definition at line 258 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!set\+Line\+Shader@{set\+Line\+Shader}}
\index{set\+Line\+Shader@{set\+Line\+Shader}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{set\+Line\+Shader()}{setLineShader()}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Line\+Shader} $\ast$ Viewport\+::set\+Line\+Shader (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\hypertarget{classShipCAD_1_1Viewport_a0720a01f8650dc4acf89aad0649d9196}{}\label{classShipCAD_1_1Viewport_a0720a01f8650dc4acf89aad0649d9196}


Definition at line 232 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!set\+Mono\+Face\+Shader@{set\+Mono\+Face\+Shader}}
\index{set\+Mono\+Face\+Shader@{set\+Mono\+Face\+Shader}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{set\+Mono\+Face\+Shader()}{setMonoFaceShader()}}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Face\+Shader} $\ast$ Viewport\+::set\+Mono\+Face\+Shader (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}\hypertarget{classShipCAD_1_1Viewport_ad6be617bdcab76cd2f44b0528371cd5d}{}\label{classShipCAD_1_1Viewport_ad6be617bdcab76cd2f44b0528371cd5d}


Definition at line 245 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!set\+Viewport\+Mode@{set\+Viewport\+Mode}}
\index{set\+Viewport\+Mode@{set\+Viewport\+Mode}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{set\+Viewport\+Mode}{setViewportMode}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::set\+Viewport\+Mode (
\begin{DoxyParamCaption}
\item[{{\bf viewport\+\_\+mode\+\_\+t}}]{mode}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [slot]}}\hypertarget{classShipCAD_1_1Viewport_a578ac5ee96e36638739517fa21bf70c0}{}\label{classShipCAD_1_1Viewport_a578ac5ee96e36638739517fa21bf70c0}


Definition at line 104 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!set\+Viewport\+Type@{set\+Viewport\+Type}}
\index{set\+Viewport\+Type@{set\+Viewport\+Type}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{set\+Viewport\+Type}{setViewportType}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::set\+Viewport\+Type (
\begin{DoxyParamCaption}
\item[{{\bf viewport\+\_\+type\+\_\+t}}]{ty}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [slot]}}\hypertarget{classShipCAD_1_1Viewport_a554a3455c39ee5652b13c9b24c3c962e}{}\label{classShipCAD_1_1Viewport_a554a3455c39ee5652b13c9b24c3c962e}


Definition at line 129 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!shoot\+Pick\+Ray@{shoot\+Pick\+Ray}}
\index{shoot\+Pick\+Ray@{shoot\+Pick\+Ray}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{shoot\+Pick\+Ray(\+Pick\+Ray \&ray)}{shootPickRay(PickRay &ray)}}]{\setlength{\rightskip}{0pt plus 5cm}bool Viewport\+::shoot\+Pick\+Ray (
\begin{DoxyParamCaption}
\item[{{\bf Pick\+Ray} \&}]{ray}
\end{DoxyParamCaption}
)}\hypertarget{classShipCAD_1_1Viewport_aa9af80400534f46e5420916a2895ead5}{}\label{classShipCAD_1_1Viewport_aa9af80400534f46e5420916a2895ead5}


Definition at line 454 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!update@{update}}
\index{update@{update}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{update()}{update()}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::update (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_a7997e0e684a4f8b5709f4d98be6cebb4}{}\label{classShipCAD_1_1Viewport_a7997e0e684a4f8b5709f4d98be6cebb4}


Definition at line 185 of file viewport.\+cpp.

\index{Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}!wheel\+Event@{wheel\+Event}}
\index{wheel\+Event@{wheel\+Event}!Ship\+C\+A\+D\+::\+Viewport@{Ship\+C\+A\+D\+::\+Viewport}}
\subsubsection[{\texorpdfstring{wheel\+Event(\+Q\+Wheel\+Event $\ast$)}{wheelEvent(QWheelEvent *)}}]{\setlength{\rightskip}{0pt plus 5cm}void Viewport\+::wheel\+Event (
\begin{DoxyParamCaption}
\item[{Q\+Wheel\+Event $\ast$}]{event}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}\hypertarget{classShipCAD_1_1Viewport_a9ac4c18fa3454cddc5e73322c3d1afd8}{}\label{classShipCAD_1_1Viewport_a9ac4c18fa3454cddc5e73322c3d1afd8}


Definition at line 429 of file viewport.\+cpp.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Ship\+C\+A\+Dlib/\hyperlink{viewport_8h}{viewport.\+h}\item 
Ship\+C\+A\+Dlib/\hyperlink{viewport_8cpp}{viewport.\+cpp}\end{DoxyCompactItemize}
